package negocio;

import java.io.File;
import java.io.FileNotFoundException;
import java.sql.SQLException;
import java.util.Vector;

import comunicacao.ConexaoBD;
import comunicacao.InterfaceMedicoBD;
import base.Medico;

public class ControleMedico {

	InterfaceMedicoBD interfaceBD;

	public ControleMedico(ConexaoBD conexaoBD) {
		this.interfaceBD = new InterfaceMedicoBD(conexaoBD);
	}

	public int cadastrarMedico(String nome, String cpf, String crefito, String dados, String senha, String fotoPath, boolean admin) throws FileNotFoundException, SQLException { 
		File foto = null;
		if(fotoPath != "")
			foto = new File(fotoPath);
		if(admin)
			return interfaceBD.cadastrarMedico(nome, cpf, crefito, dados, senha, foto, "T");
		else
			return interfaceBD.cadastrarMedico(nome, cpf, crefito, dados, senha, foto, "F");
	}

	public int editarMedico(long id, String nome, String cpf, String crefito, String dados, String senha, String fotoPath, boolean admin) throws SQLException, FileNotFoundException {	
		File foto = null;	
		if(fotoPath != null)
			foto = new File(fotoPath);
		if(senha == null) {
			if(admin)
				return interfaceBD.editarMedico(id, nome, cpf, crefito, dados, foto, "T");
			else
				return interfaceBD.editarMedico(id, nome, cpf, crefito, dados, foto, "F");
		} else
			return interfaceBD.editarSenha(id, senha);
	}

	public int removerMedico(long id) throws SQLException {
		return interfaceBD.removerMedico(id);
	}

	public Medico consultarMedico(long id) throws SQLException {
		return interfaceBD.consultarMedico(id);
	}
	
	public Vector<Medico> consultarMedicos() throws SQLException {
		return interfaceBD.consultarMedicos();
	}

	public Vector<Medico> consultarMedicosExceto(long idExcluido) throws SQLException {
		return interfaceBD.consultarMedicos(idExcluido);
	}
}